矩阵求和
题目 矩阵求和
思路分析
能想到的就是暴力+二维前缀和做
n太大了 静态数组 二维的1e7+10没运行就直接炸了
所以采用vector根据输入的n分配空间 能过几个是几个
最后是过了三 得10分
代码实现
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
int n;
int main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>n;
vector<vector<int>> a(n + 1, vector<int>(n + 1));
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
int x=__gcd(i,j);
x*=x;
a[i][j]=a[i-1][j]+a[i][j-1]-a[i-1][j-1]+x;
}
}
cout<<a[n][n];
return 0;
}
同类题型
视频讲解
⬅️ 搭积木 🏠 00-冲刺国赛 ➡️ 第十届蓝桥杯大赛软件赛决赛C/C++ 大学 B 组
💬 评论